Multiple input, multiple output (MIMO) is a wireless communication technique that uses multiple antennas at each end of a communication channel. That is, a transmitting device uses multiple transmit antennas to transmit signals into one end of the wireless channel and a receiving device uses multiple receive antennas to receive the signals at the other end of the wireless channel. By using multiple antennas at each side of the channel, the spatial dimension can be taken advantage of in a manner that improves overall communication performance. MIMO can be implemented as an open loop or a closed loop technique. In open loop MIMO, a transmitting device does not have knowledge of the state of the channel before transmitting a signal into the channel. In closed loop MIMO, on the other hand, the transmitting device acquires a beamforming matrix (that is based on present channel conditions) that it uses to precondition or precode signals before transmitting them into the channel.
Closed loop MIMO may be practiced using either implicit feedback or explicit feedback. Implicit feedback relies on the property of channel reciprocity to obtain information about a MIMO channel within a transmitting device. That is, the reciprocal property of the channel allows the transmitting device to calculate a channel matrix for the forward direction channel from channel information observed for the reverse direction channel. Implicit feedback requires calibrations to be performed for the transmitting device and the receiving device to accurately model the overall channel as a reciprocal component. Explicit feedback transmits training symbols in the forward direction from the transmitting device to the receiving device. The receiving device then develops the beamforming matrix using the training symbols and transmits it back to the transmitting device as feedback. When explicit feedback is used, complicated system calibrations are not required.
When using explicit feedback in a closed loop MIMO channel, a problem may arise if the quality of the return channel is low. That is, errors generated in the return channel may corrupt the beamforming matrix information so that the matrix received by the transmitting device is different from the one transmitted by the receiving device. In some networks, forward error correction (FEC) may be used in the return channel to correct errors that occur therein. However, FEC coding is typically only capable of correcting a certain number of errors. If the number of errors within the fed back information exceeds this number, then the transmitting device may end up using the wrong beamforming matrix to precode data before transmission. The receiving device may then use the originally selected beamforming matrix to demodulate the transmitted data, leading to faulty communication.